package com.uzai.console.vo.report;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author liuqi
 * @date 2021年09月01日 18:06
 */
@Data
@ApiModel("订单收益报表返回对象")
public class OrderRevenueReportVo {

    /**
     * 机器人信息
     */
    @ApiModelProperty("机器人头像URL")
    private String headImgUrl;
    @ApiModelProperty("机器人唯一id")
    private Long deviceUniqueId;
    @ApiModelProperty("机器人昵称")
    private String deviceName;
    @ApiModelProperty("机器人备注")
    private String deviceRemark;

    /**
     * 有效订单总预估佣金
     */
    @ApiModelProperty("有效订单总预估佣金")
    private Double totalEstimateCommission;
    @ApiModelProperty("已绑定买家有效订单总预估佣金")
    private Double bindTotalEstimateCommission;
    @ApiModelProperty("未绑定买家有效订单总预估佣金")
    private Double unbindTotalEstimateCommission;

    /**
     * 有效订单预估利润
     */
    @ApiModelProperty("有效订单总预估利润")
    private Double totalEstimateProfit;
    @ApiModelProperty("已绑定买家有效订单总预估利润")
    private Double bindTotalEstimateProfit;
    @ApiModelProperty("未绑定买家有效订单总预估利润")
    private Double unbindTotalEstimateProfit;

    /**
     * 分佣
     */
    @ApiModelProperty("已绑定买家有效订单总分佣")
    private Double bindTotalDividendCount;
    @ApiModelProperty("未绑定买家有效订单总分佣")
    private Double unbindTotalDividendCount;

    /**
     * 有效订单笔数
     * <p>
     * 有效: 表示的是订单的笔数
     * 预估: 表示的是订单的佣金
     */
    @ApiModelProperty("有效订单总笔数")
    private Integer totalValidOrderCount;
    @ApiModelProperty("已绑定买家有效订单笔数")
    private Integer bindTotalValidOrderCount;
    @ApiModelProperty("未绑定买家有效订单笔数")
    private Integer unbindTotalValidOrderCount;

    /**
     * 失效订单笔数
     */
    @ApiModelProperty("已绑定买家无效订单笔数")
    private Integer bindTotalInValidOrderCount;
    @ApiModelProperty("未绑定买家无效订单笔数")
    private Integer unbindTotalInValidOrderCount;

    /**
     * 退款(维权)订单
     *
     * 有效: 表示的是订单的笔数
     * 预估: 表示的是订单的佣金
     */
    @ApiModelProperty("已绑定买家退款(维权)订单笔数")
    private Integer bindTotalRefundOrderCount;
    @ApiModelProperty("未绑定买家退款(维权)订单笔数")
    private Integer unbindTotalRefundOrderCount;

}
